// 测试闲置物品API响应格式
const http = require('http');
const config = require('./js/services/api/config');

// 后端API基础URL
const baseURL = config.api.baseURL;
console.log('测试API URL:', baseURL + '/idle-items');

// 解析URL
const url = new URL(baseURL + '/idle-items');

// 发送GET请求测试闲置物品API
const options = {
  hostname: url.hostname,
  port: url.port,
  path: url.pathname,
  method: 'GET'
};

const req = http.request(options, (res) => {
  let data = '';

  // 接收数据
  res.on('data', (chunk) => {
    data += chunk;
  });

  // 数据接收完成
  res.on('end', () => {
    console.log('响应状态码:', res.statusCode);
    try {
      const body = JSON.parse(data);
      console.log('响应数据结构:', JSON.stringify(body, null, 2));
      console.log('数据类型:', Array.isArray(body) ? '数组' : typeof body);

      // 检查是否有data字段或items字段
      if (body.data) {
        console.log('data字段存在，类型:', Array.isArray(body.data) ? '数组' : typeof body.data);
        if (Array.isArray(body.data)) {
          console.log('data数组长度:', body.data.length);
          if (body.data.length > 0) {
            console.log('第一个元素结构:', JSON.stringify(body.data[0], null, 2));
          }
        }
      }

      if (body.items) {
        console.log('items字段存在，类型:', Array.isArray(body.items) ? '数组' : typeof body.items);
        if (Array.isArray(body.items)) {
          console.log('items数组长度:', body.items.length);
          if (body.items.length > 0) {
            console.log('第一个元素结构:', JSON.stringify(body.items[0], null, 2));
          }
        }
      }
    } catch (error) {
      console.error('解析响应数据失败:', error);
      console.log('原始响应数据:', data);
    }
  });
});

// 处理错误
req.on('error', (e) => {
  console.error('请求错误:', e.message);
});

// 结束请求
req.end();